Filename | (eval 96)[/usr/share/perl5/Sub/Quote.pm:5] |
Statements | Executed 24 statements in 397µs |
Eval Invoked At | /usr/share/perl5/Sub/Quote.pm line 5 |
Sibling evals | 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18 |
Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
---|---|---|---|---|---|
2 | 2 | 2 | 27µs | 1.00ms | new | Search::Elasticsearch::Transport::
1 | 1 | 1 | 12µs | 23µs | BEGIN@3.28 | Sub::Quote::
1 | 1 | 1 | 7µs | 7µs | BEGIN@6.29 | Method::Generate::Constructor::
Line | State ments |
Time on line |
Calls | Time in subs |
Code |
---|---|---|---|---|---|
1 | { | ||||
2 | 2 | 2µs | my $_QUOTED = ${$_[1]->{"\$_QUOTED"}}; | ||
3 | 2 | 59µs | 2 | 35µs | # spent 23µs (12+11) within Sub::Quote::BEGIN@3.28 which was called:
# once (12µs+11µs) by Sub::Quote::_clean_eval at line 3 # spent 23µs making 1 call to Sub::Quote::BEGIN@3.28
# spent 11µs making 1 call to warnings::unimport |
4 | # spent 1.00ms (27µs+976µs) within Search::Elasticsearch::Transport::new which was called 2 times, avg 502µs/call:
# once (6µs+888µs) by Search::Elasticsearch::new at line 40 of /opt/flows/lib/lib/perl5/Search/Elasticsearch.pm
# once (21µs+88µs) by Search::Elasticsearch::new at line 53 of Sub/Defer.pm | ||||
5 | package Method::Generate::Constructor; | ||||
6 | # spent 7µs within Method::Generate::Constructor::BEGIN@6.29 which was called:
# once (7µs+0s) by Sub::Quote::_clean_eval at line 11 | ||||
7 | 1 | 1µs | $^H = "2018"; | ||
8 | 1 | 400ns | ${^WARNING_BITS} = "\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\003"; | ||
9 | 1 | 6µs | %^H = ( | ||
10 | ); | ||||
11 | 1 | 302µs | 1 | 7µs | } # spent 7µs making 1 call to Method::Generate::Constructor::BEGIN@6.29 |
12 | 1 | 600ns | my $class = shift; | ||
13 | 1 | 200ns | $class = ref($class) if ref($class); | ||
14 | 1 | 200ns | if ($class ne "Search::Elasticsearch::Transport") { | ||
15 | if ($Moo::MAKERS{$class}) { | ||||
16 | Moo->_constructor_maker_for($class,"Search::Elasticsearch::Transport"); | ||||
17 | return $class->new(@_); | ||||
18 | } elsif ($INC{"Moose.pm"} and my $meta = Class::MOP::get_metaclass_by_name($class)) { | ||||
19 | return $meta->new_object($class->BUILDARGS(@_)); | ||||
20 | } | ||||
21 | } | ||||
22 | 1 | 100ns | my $args; | ||
23 | 1 | 800ns | if ( scalar @_ == 1 ) { | ||
24 | 1 | 700ns | unless ( defined $_[0] && ref $_[0] eq 'HASH' ) { | ||
25 | die "Single parameters to new() must be a HASH ref" | ||||
26 | ." data => ". $_[0] ."\n"; | ||||
27 | } | ||||
28 | 1 | 3µs | $args = { %{ $_[0] } }; | ||
29 | } | ||||
30 | elsif ( @_ % 2 ) { | ||||
31 | die "The new() method for $class expects a hash reference or a key/value list." | ||||
32 | . " You passed an odd number of arguments\n"; | ||||
33 | } | ||||
34 | else { | ||||
35 | $args = {@_}; | ||||
36 | } | ||||
37 | 1 | 3µs | if (my @missing = grep !exists $args->{$_}, qw(cxn_pool logger serializer)) { | ||
38 | die "Missing required arguments: ".join(', ', sort @missing); | ||||
39 | } | ||||
40 | 1 | 1µs | my $new = bless({}, $class);; | ||
41 | 1 | 4µs | if (exists $args->{"cxn_pool"}) { | ||
42 | $new->{"cxn_pool"} = $args->{"cxn_pool"}; | ||||
43 | } | ||||
44 | 1 | 600ns | if (exists $args->{"logger"}) { | ||
45 | $new->{"logger"} = $args->{"logger"}; | ||||
46 | } | ||||
47 | 1 | 600ns | $new->{"send_get_body_as"} = ( | ||
48 | exists $args->{"send_get_body_as"} | ||||
49 | ? $args->{"send_get_body_as"} | ||||
50 | : "GET" | ||||
51 | ); | ||||
52 | 1 | 400ns | if (exists $args->{"serializer"}) { | ||
53 | $new->{"serializer"} = $args->{"serializer"}; | ||||
54 | } | ||||
55 | 1 | 2µs | 1 | 88µs | $new->Search::Elasticsearch::Transport::BUILD($args); # spent 88µs making 1 call to Search::Elasticsearch::Role::Transport::BUILD |
56 | 1 | 4µs | return $new; | ||
57 | } | ||||
58 | 1 | 1µs | $_QUOTED->[3] = \&Search::Elasticsearch::Transport::new | ||
59 | } | ||||
60 | 1 | 5µs | 1; | ||
61 | |||||
62 | ; |